

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.PrintWriter;
import java.util.Date;
import javax.swing.JOptionPane;
/**
 *
 * @author Kid_goth
 */
public class clsReporte 
{ 
    //Para el Reporte
    String file = "";
    private FileWriter  fichero = null;
    private PrintWriter pw = null;
    //
    
    int[] nun = new int[20];
    int[] men1 = new int[20];
    int[] hor = new int[20];
    int[] hor2 = new int[20];
    int[] hor3 = new int[20];
    int[] hor4 = new int[20];
    int[] mas4 = new int[20];
    
    public void Reporte(int preg, int resp)
    {
        if(resp == 1)
        {
            nun[preg-1] += 1; 
        }
        else if(resp == 2)
        {
            men1[preg-1] += 1; 
        }
        else if(resp == 3)
        {
            hor[preg-1] += 1; 
        }
        else if(resp == 4)
        {
            hor2[preg-1] += 1; 
        }
        else if(resp == 5)
        {
            hor3[preg-1] += 1; 
        }
        else if(resp == 6)
        {
            hor4[preg-1] += 1; 
        }
        else if(resp == 7)
        {
            mas4[preg-1] += 1; 
        }
        else
        {
            JOptionPane.showMessageDialog(null, "Created by Kid_Goth");
        }
    }
    
    public void MosReporte()
    {
        String xD="";
        file = "reportes/";
        file += JOptionPane.showInputDialog(null, "Por Favor Escriba el nombre del Reporte: ", "Nombre del reporte", JOptionPane.QUESTION_MESSAGE)+".rtf";
         try
         {
            for(int i=0; i<=19;i++)
            {
                if(i==0)
                {
                    fichero = new FileWriter(file);                
                    pw = new PrintWriter(fichero);
                    //sentencia para crear el Reporte
                    pw.println(
                    "#-------------------------------------------------------------------#\n"
                    +"Para la pregunta #"+(i+1)+" se obtuvo lo siguiente:\n"
                    +"Nunca = " + nun[i]+"\n"
                    +"Menos de una Hora = " + men1[i]+"\n"
                    +"Una Hora = " + hor[i]+"\n"
                    +"Dos Horas = " + hor2[i]+"\n"
                    +"Tres Horas = " + hor3[i]+"\n"
                    +"Cuatro Horas = " + hor4[i]+"\n"
                    +"Mas de Cuatro Horas = " + mas4[i]+"\n");
                    fichero.close();
                    xD = Buffer();
                }
                else
                {
                    fichero = new FileWriter(file);                
                    pw = new PrintWriter(fichero);
                    //sentencia para crear el Reporte
                    pw.println(
                    xD
                    +"#-------------------------------------------------------------------#\n"
                    +"Para la pregunta #"+(i+1)+" se obtuvo lo siguiente:\n"
                    +"Nunca = " + nun[i]+"\n"
                    +"Menos de una Hora = " + men1[i]+"\n"
                    +"Una Hora = " + hor[i]+"\n"
                    +"Dos Horas = " + hor2[i]+"\n"
                    +"Tres Horas = " + hor3[i]+"\n"
                    +"Cuatro Horas = " + hor4[i]+"\n"
                    +"Mas de Cuatro Horas = " + mas4[i]+"\n");
                    fichero.close();
                    xD = Buffer();
                }                
            }
            System.out.println("Reporte Generado con Exito");
        }
        catch (Exception e)
        {
            e.printStackTrace();
            int a = JOptionPane.showConfirmDialog(null, "No se ha podido crear el reporte por el sig. Error: \n,"+e+"\n¿desea verlo en pantalla?","Error al Crear Reporte", JOptionPane.YES_NO_OPTION);
            if(a==0)
            {
                for(int i=0; i<=19;i++)
                {
                    JOptionPane.showMessageDialog(null, 
                    "Para la pregunta #"+(i+1)+" se obtuvo lo siguiente:\n"
                    + "Nuncas = " + nun[i]
                    + "\nMenos de una Hora = " + men1[i]
                    + "\nUna hora = " + hor[i]
                    + "\nDos Horas = " + hor2[i]
                    + "\nTres Horas = " + hor3[i]
                    + "\nCuatro Horas = " + hor4[i]
                    + "\nMas de Cuatro Horas = " + mas4[i]
                    , "Reporte", JOptionPane.INFORMATION_MESSAGE);
                }
            }
        
        }
        finally 
        {
            try 
            {
                if (null != fichero)
                {
                    fichero.close();
                }
            }
            catch (Exception e2)
            {
                e2.printStackTrace();
            }
        }        
    }
    
    public String Buffer()
    {
       String lect = "";
       try
       {
            BufferedReader bf = new BufferedReader(new FileReader(file));
            String cadena = "";
            while((cadena = bf.readLine()) != null)
            {
                lect += cadena+"\n";
            }
       }          
       catch (Exception ex)
       {
           ex.printStackTrace();          
       } 
       return lect;        
    }
}
